projects
/
xen.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
93c129e
)
svm: Properly mask unsupported bits in CPUID_80000001_ECX.
author
Keir Fraser
<keir.fraser@citrix.com>
Sat, 12 Jan 2008 09:29:38 +0000
(09:29 +0000)
committer
Keir Fraser
<keir.fraser@citrix.com>
Sat, 12 Jan 2008 09:29:38 +0000
(09:29 +0000)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/arch/x86/hvm/svm/svm.c
patch
|
blob
|
history
diff --git
a/xen/arch/x86/hvm/svm/svm.c
b/xen/arch/x86/hvm/svm/svm.c
index cb4ebdd4d94493362a1861b764fd908847224045..15ade3025d13df618fe46f3b575ed57076aa7dda 100644
(file)
--- a/
xen/arch/x86/hvm/svm/svm.c
+++ b/
xen/arch/x86/hvm/svm/svm.c
@@
-1009,6
+1009,12
@@
static void svm_vmexit_do_cpuid(struct vmcb_struct *vmcb,
__clear_bit(X86_FEATURE_PSE36 & 31, &edx);
/* Filter all other features according to a whitelist. */
+ ecx &= (bitmaskof(X86_FEATURE_LAHF_LM) |
+ bitmaskof(X86_FEATURE_ALTMOVCR) |
+ bitmaskof(X86_FEATURE_ABM) |
+ bitmaskof(X86_FEATURE_SSE4A) |
+ bitmaskof(X86_FEATURE_MISALIGNSSE) |
+ bitmaskof(X86_FEATURE_3DNOWPF));
edx &= (0x0183f3ff | /* features shared with 0x00000001:EDX */
bitmaskof(X86_FEATURE_NX) |
bitmaskof(X86_FEATURE_LM) |